package com.hellobike.haxing.modules.shop.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description: 自提点
 * @Author: haxing-boot
 * @Date: 2020-02-03
 * @Version: V1.0
 */
@Data
@TableName("t_shop")
public class Shop implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(type = IdType.AUTO)
    private Long id;
    /**
     * provinceId
     */
    @Excel(name = "provinceId", width = 15)
    private Long provinceId;

    @TableField(exist = false)
    private String provinceName;
    /**
     * cityId
     */
    @Excel(name = "cityId", width = 15)
    private Long cityId;

    @TableField(exist = false)
    private String cityName;
    /**
     * districtId
     */
    @Excel(name = "districtId", width = 15)
    private Long districtId;

    @TableField(exist = false)
    private String districtName;
    /**
     * streetId
     */
    @Excel(name = "streetId", width = 15)
    private Long streetId;

    @TableField(exist = false)
    private String streetName;
    /**
     * address
     */
    @Excel(name = "address", width = 15)
    private String address;
    /**
     * 团长营业时间
     */
    @Excel(name = "团长营业时间", width = 15)
    private String businessTime;
    /*团长店铺营业执照地址*/
    @Excel(name = "团长店铺营业执照地址", width = 15)
    private String businessLicense;
    /**
     * shopName
     */
    @Excel(name = "shopName", width = 15)
    private String shopName;
    /**
     * 团长身份信息
     */
    @Excel(name = "团长身份信息", width = 15)
    private String idNo;
    /**
     * 微信号码
     */
    @Excel(name = "微信号码", width = 15)
    private String wechatNo;
    /**
     * 团长银行卡卡号
     */
    @Excel(name = "团长银行卡卡号", width = 15)
    private String bankCardNo;
    /*团长开户行信息*/
    @Excel(name = "团长开户行信息", width = 15)
    private String bankCardOwner;
    /*团长手机号*/
    @Excel(name = "团长手机号", width = 15)
    private String mobile;
    /**
     * 推荐的BD的姓名
     */
    @Excel(name = "推荐的BD的姓名", width = 15)
    private String recommender;

    /**
     * 推荐人手机号
     */
    private String leadShopMobile;
    /*createTime*/
    @Excel(name = "createTime", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /*updateTime*/
    @Excel(name = "updateTime", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
    /*createBy*/
    @Excel(name = "createBy", width = 15)
    private Integer createBy;
    /*updateBy*/
    @Excel(name = "updateBy", width = 15)
    private Integer updateBy;
    /*团长审核状态，0初始，1审核通过，2下架*/
    @Excel(name = "团长审核状态，0初始，1审核通过，2下架", width = 15)
    private Integer state;
    /*纬度*/
    @Excel(name = "纬度", width = 15)
    private BigDecimal geoLat;
    /*经度*/
    @Excel(name = "经度", width = 15)
    private BigDecimal geoLon;
    /*deleted*/
    @Excel(name = "deleted", width = 15)
    @TableLogic
    private Integer deleted;
    /**
     * 是否拥有门店，1有，0没有
     */
    @Excel(name = "是否拥有门店，1有，0没有", width = 15)
    private Integer hasShop;
    @Excel(name = "团长真实名称", width = 15)
    private String realName;
    @Excel(name = "团长总金额", width = 15)
    private BigDecimal totalAmount;
    @ApiModelProperty("审核失败原因")
    private String reason;
    private Integer shopType;
    private Long userId;
    private Long sysLeaderId;
    private Long leadShopId;
    @TableField(exist = false)
    private String sysLeaderName;
    private String bankCode;
}
